#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;

int main() {
  ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  int x;
  vector<int> sys, que;

  while (cin >> x) {
    if (que.empty() || que.back() <= -x) {
      que.emplace_back(-x);
    } else {
      *upper_bound(que.begin(), que.end(), -x) = -x;
    }
    if (sys.empty() || sys.back() < x) {
      sys.push_back(x);
    } else {
      *lower_bound(sys.begin(), sys.end(), x) = x;
    }
  }
  cout << que.size() << "\n"
       << sys.size() << "\n";
  return 0;
}